1. Technical Field
The present application relates generally to an improved data processing system and method. More specifically, the present application is directed to a system and method for providing sticky applications.
2. Description of Related Art
Because of the virtually worldwide acceptance of the Internet, and the World Wide Web, as an infrastructure for modern exchange of information, commerce, and the like, the proliferation of web-based applications is on the rise. Moreover, the software that enables such web-based applications has become easier to use and more readily available as continued advances in this area occur. For example, web-based application technologies such as Flash, Ajax, and the like, promise to revolutionize the web-based application environment.
However, it should be appreciated that there is still a great divide between web-based applications and traditional operating system based applications. That is, web-based applications, or simply web applications, operate in a domain associated with the web browser of a client computing device while traditional operating system based applications operate in a separate domain associated with the operating system. Typically, an operating system based application interfaces with the operating system, its associated device drivers, and the like, to perform various operations including input/output operations and the like. Basically, the operating system manages the use of resources of the client computing device for the operating system based applications. At the foundation of all system software, the operating system performs basic tasks such as controlling and allocating memory, prioritizing system requests, controlling input and output devices, facilitating networking and managing file systems. The operating system forms a platform for other system software and for operating system based application software.
Web applications provided by a server computing device, on the other hand, generate a series of web documents in a standard format supported by common web browser applications of client computing devices. Client-side scripting in a standard language, such as JavaScript, is commonly included to add dynamic elements to the user interface. Generally, each individual web page is delivered to the client computing device as a static document, but the sequence of pages can provide an interactive experience, as user input is returned through Web form elements embedded in the page markup. During a session, the web browser interprets and displays the pages, and acts as the universal client for any Web application. A significant advantage of web applications that support standard browser features is that they perform as specified regardless of the operating system or OS version installed on a given client computing device.
While web applications are becoming more prevalent, operating system based applications will continue to be used for the foreseeable future. Operating system based applications will remain in widespread use because people are used to these types of applications and because business institutions, government institutions, and individuals have invested large amounts of capital in obtaining such operating system based applications for use in their organizations and homes.
With this dichotomy in applications, it can be appreciated that it is often the case that a user of a computing device, such as a client computing device, will use both web applications and operating system based applications in a single session. For example, using a Microsoft Windows™ operating system environment, a user may utilize his/her web browser to access a web application, via a web browser, in one window while also accessing an operating system based application in another separate window. In such a case, when the user is accessing one window over the other, the non-accessed window is not able to be interacted with, and often times is not even visible on the display. In other words, the non-accessed window becomes essentially non-active. As a result, a user must constantly switch between the window in which the web-based application is presented and the window in which the operating system based application is presented in order to make use of both applications at substantially the same time. This is inconvenient to the user, can be a source of frustration, reduces the speed at which tasks may be performed by the user, and can result in loss of data in some instances.